home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
081
/
omam_112.arc
/
RASMAM.DOC
< prev
next >
Wrap
Text File
|
1987-12-18
|
42KB
|
1,137 lines
RASMAM
Opus Message Area Manager
(c) Copyright 1987 -- Roger Smith
VERSION 1.12
----- Small Print -----
RASMAM is copyrighted. You are granted permission to use RASMAM
and to copy and distribute it. Distributed copies may not be sold
and must not be modified. All distributed copies must contain the
executable file and this documentation. RASMAM is not guaranteed
to do anything. The author will assume no liability for any loss
incurred from the use of this program. Although, RASMAM has been
tested on several PC compatibles. It may not work on some less PC
compatible MSDOS machines.
-- End of Small Print --
RASMAM replaces several small utilities and one large batch file
that I've been using to manage message areas on the RSBBS.
RASMAM renumbers the message areas, creates message waiting lists
(like OpusWait), and archives or deletes old messages. It also
manages my "Picture Gallery" and can be used to automate many
other tasks.
The command to execute RASMAM is:
MAM script-file [/TERSE] [/LIST]
The /TERSE option tells RASMAM to limit the amount of information
displayed. The /LIST option causes RASMAM to list the script file
as it is read. The script-file tells RASMAM what to do. It is
really a simple programming language which is described in the
following sections.
SCRIPT FILES
RASMAM is controlled by a script or command file. This file tells
RASMAM where to find system files that it requires and what
actions to take in the message areas. The script file is an ASCII
text file that you can create with almost any text editor. A few
sample scripts are included in the RASMAM distribution package.
Script files may include comments. Lines that begin with any one
of the following characters are ignored by RASMAM:
. , > @ ^ & * : ; ` ' ~ > < / ? - + = | \
RASMAM -2-
You may also use "pseudo-variables" or macros within the script
file. When RASMAM encounters a macro in a script, the macro is
expanded to its value. RASMAM has several macros built-in:
[The names of the built-in macros have changed since version 1.01]
var. formerly becomes
#JULIAN# #J# -- the current day of the year (001..366)
#DAY# #D# -- the current day of the month (01..31)
#MONTH# #M# -- the current month (01..12)
#YEAR# #Y# -- the current year (87..99)
$WEEKDAY$ $D$ -- the current weekday (SUN..SAT)
$MONTH$ $M$ -- the current month (JAN..DEC)
$SCRIPT$ $C$ -- name of the current MAM configuration file
%var% -- value of specified environment variable
%% -- %
## -- #
$$ -- $
New built-in macros (added after version 1.01):
#HOUR# -- hour when MAM was run (00..23)
#MINUTE# -- minute when MAM was run (00..59)
#AREA# -- number of current message area (00..99)
#user name# -- user number of specified user (0..???)
$PATH$ -- path to current message area
$net/node$ -- Hex string NNNNnnn where NNNN is net and
-- nnnn is node. For example,
-- $366/14$ becomes 016E000E
For example, if you use #DAY# in a RASMAM script, it will be
replaced by two digits representing the day of the month. On
September 9, 1987, the line:
ARCHIVE KEEP 100 TO C:\OPUS\FILES\ARCHIVES\TEXT#YEAR#.$MONTH$
Will be interpreted by RASMAM as:
ARCHIVE KEEP 100 TO C:\OPUS\FILES\ARCHIVES\TEXT87.SEP
RASMAM -3-
----------------------------------------------------
DEFINE
Define/redefine macros
DEFINE macro definition
You may define your own macros using the DEFINE command. For
example:
DEFINE opus c:\opus
DEFINE misc $opus$\misc
DEFINE files $opus$\files
DEFINE arcs $file$\archives
After the above DEFINE statements, you can use $FILES$ anywhere
in this script and it will be replaced by "C:\OPUS\FILES" or use
$ARCS$ instead of "C:\OPUS\FILES\ARCHIVES" -- it makes some of
your lines shorter and makes changes easier.
The DEFINE command may be used anywhere in the script file. A
macro may be redefined at any time. RASMAM allows up to 20 macros
to be defined.
RASMAM expands the lines as it reads them. It handles expanded
lines up to several hundred characters longs.
----------------------------------------------------
FILE LOG
Declares a log file
FILE LOG filespec
The FILE LOG statement is optional. It tells RASMAM to log
messages to the specified file. Don't use the same log file as
Opus. All file names you give in a MAM script should be fully
qualified, i.e. you should specify the drive, path, and complete
filename.
FILE LOG $opus$\log\mam.log
In general, the LOG command should be entered somewhere near the
start of the script. But it may be used anywhere. If you use it
more than once, the current log file is closed and a new one is
opened.
RASMAM -4-
----------------------------------------------------
LOG
Displays and logs a message
LOG message
The LOG command may be put anywhere in the file and will echo the
text following the command to the screen (if /TERSE is not used)
and to the log file if any.
LOG Running MAM $C$
----------------------------------------------------
FILE USER
Declares the user file
FILE USER filespec
The FILE USER statement is required to tell RASMAM the name of
your user file. It must appear before any AREA, DELETE, LOCK,
UNLOCK, or NOTE commands and before any #user name# macro.
FILE USER $opus$\user.bbs
----------------------------------------------------
PATH CUSTOM
Declares the custom welcome path
PATH CUSTOM file-path [KEEP]
The PATH CUSTOM statement tells MAM where to put the ###.BBS
files that the WAIT and NOTE commands create. This will usually
be the same as Opus's system path unless you're using a program
like CUSTOM4 to display the custom welcomes.
PATH CUSTOM $opus$\
If Opus finds a custom welcome (###.BBS) file in its system path
for the current user, it will display the file before the normal
welcome file. You can use more than one PATH CUSTOM in your
script to change where RASMAM places the custom files for
different areas, but in general you need to just use one PATH
CUSTOM before any WAIT, DELETE, or NOTE commands.
The KEEP option is useful in some special cases. When RASMAM
executes the PATH CUSTOM command it deletes all the custom
welcomes in the specified directory (1*.BBS, 2*.BBS, ...). The
KEEP option tells RASMAM not to delete the custom welcomes. This
may be useful if your script is not creating message waiting
lists, but is using the NOTE or DELETE commands.
WARNING: When RASMAM deletes custom welcomes, it deletes ALL
files with names like 1*.BBS, 2*.BBS, 3*.BBS, and so on to 9*.BBS.
RASMAM -5-
----------------------------------------------------
FILE ECHO
Declares the echo control file
FILE ECHO file-path
The FILE ECHO statement tells RASMAM the name of your Opus-style
Echo control file that RASMAM uses to look up area numbers and
paths. Make sure all areas that RASMAM will operate on are
defined in the Echo control file. Opus doesn't mind if you have
areas listed that are not echo areas. For RASMAM to work in a
message area, the area must be listed in the echo control file.
FILE ECHO $opus$\nodelist\echo.ctl
When RASMAM executes the FILE ECHO command, it reads the echo
file to build a table of your message area numbers and paths.
The FILE ECHO command must appear before any AREA commands.
----------------------------------------------------
FORMAT
Select Format of Messages Waiting List
FORMAT {A | B | C}
The FORMAT command tells MAM how to format the messages waiting
list. Currently, three formats are supported. The first (FORMAT
A) is faster and is the default.
FORMAT A tells RASMAM to list waiting messages as follows:
1 101
2 110
The area number is followed by the message number.
FORMAT B gives more information:
General Chatter Message Area (1)
Message 101 from Roger Smith
Message 110 from James Young
The description of the message area is read from the DIR.BBS in
the message area directory. If DIR.BBS is not found, then the
EchoMail area name is used instead of the description.
FORMAT C gives even more information about waiting messages:
General Chatter Message Area (1)
Message: 101
From : Roger Smith
Date : 01-SEP-87 01:25:47
Subject: Re:RASMAM Formats
RASMAM -6-
----------------------------------------------------
DATE
Select Date Type
DATE {ARRIVED | WRITTEN}
The DATE command allows you to select how RASMAM will determine
the age of a message. DATE ARRIVED tells RASMAM to use the date
the message arrived on your system. DATE WRITTEN tells RASMAM to
use the date the message was created.
MESSAGES
Sets high message number
*****
The MESSAGES command is no longer needed and if used will produce
a warning. RASMAM will only handle messages numbered 1 through
2000. If you have any messages which are numbered greater than
2000 then you'll need to purge the message area to reduce the
number of messages to less than 2000 then renumber using another
renumbering utility such as RENUM.
----------------------------------------------------
FILE HEADER
Declares the messages waiting header
FILE HEADER file-spec [file-spec]
The FILE HEADER statement specifies the name of a file which will
be placed in the custom welcome files before the list of waiting
messages. The FILE HEADER statement is needed only if you use the
WAIT command to create messages waiting lists. If two files are
listed, MAM will use the second if the user has ANSI graphics
enabled.
FILE HEADER $misc$\opuswait.hdr $misc$\graphics.hdr
----------------------------------------------------
FILE TRAILER
Declares the messages waiting trailer
FILE TRAILER file-spec
The FILE TRAILER command tells MAM the name of a file containing
text to append to each existing custom welcome file. The files
are appended when RASMAM executes the FILE TRAILER command,
therefore the command should appear after all AREA commands.
FILE TRAILER $misc$\opuswait.trl
RASMAM -7-
----------------------------------------------------
LOCK
UNLOCK
Stop/Start Check Messages Waiting for User
LOCK {user|priv}
UNLOCK {user|priv}
The LOCK command tells MAM to stop listing messages waiting for
the specified user (or group of users by privilege) until an
UNLOCK command is issued for the user (or users). For example,
suppose you have a regular caller, James Young, that is the Sysop
of another BBS. His board participates in the MEADOW echomail
conference so you don't want MAM to list messages for him waiting
in the MEADOW area. You can use the following LOCK command before
checking MEADOW:
LOCK James Young
If you don't want MAM to list messages waiting for TWITS, use:
LOCK Twits
The UNLOCK command reverses the effect of the LOCK command.
Following up on the example earlier, you should UNLOCK James
Young after scanning MEADOW so he will be notified of messages
waiting in other areas:
UNLOCK James Young
----------------------------------------------------
AREA
Begins area section
AREA area-name [ECHO]
Use the AREA command to define the area for the following
commands. Add the word ECHO after the name if the area is an
echomail area. The area name must match the area name from your
echo control file. The AREA command must appear after the FILE
ECHO command.
AREA general ECHO
RASMAM -8-
----------------------------------------------------
WAIT
Enables creating of message waiting lists
WAIT
The WAIT command tells RASMAM to create message waiting files for
the current area (like OpusWait). These are "custom welcomes"
that are displayed when the user logs on and show him what new
messages are waiting for him. The WAIT command must appear in the
section between an AREA command and its END AREA.
WAIT
----------------------------------------------------
RENUM
Enable renumbering of messages
RENUM [SUBJECT] [CHAIN]
The RENUM command tells RASMAM to renumber the messages in the
current message area. Adding the word SUBJECT after the command
causes RASMAM to create a reply chain based on the message
subjects. This restores the reply chain that is lost when
echomail messages are sent. The CHAIN option is similar, except
the last message in a subject chain is linked to the first
message in the next chain. This forms a threaded message base
like that available on other BBSs, The "+" and "-" commands can
be used to perform a "threaded read" of the messages, If both
CHAIN and SUBJECT are given it's the same as just CHAIN. If you
don't use the CHAIN or SUBJECT options, the original reply chain
is rebuilt. RENUM must appear between an AREA command and its END
AREA.
RENUM SUBJECT
----------------------------------------------------
KILL
Delete messages based on number of messages or age of messages
KILL [PRIVATE] [RECEIVED] [WHEN i] [DAYS j] [SKIP k] [KEEP l]
The PRIVATE option specifies that the command will only affect
messages which are private. The RECEIVED option specifies that
the command will only delete messages which have been read. The
WHEN option specifies that the KILL command should execute only
when there are more than i messages in the area. The DAYS option
allows you to specify that only messages older than j days be
killed. The SKIP option specifies that the KILL command should
not delete any of the first k messages in the area. The KEEP
option specifies that the last l messages in the area will not be
killed.
KILL must appear in an AREA section (between an AREA command and
an END AREA). More than one KILL command may be used in a section
RASMAM -9-
and KILL commands may me intermixed with ARCHIVE commands.
Here are a few examples of KILL commands:
Kill all received messages in the area:
KILL RECEIVED
Kill all messages over 90 days old except the first 5 messages:
KILL DAYS 90 SKIP 5
Kill all messages over 30 days old keeping at least 10:
KILL DAYS 30 KEEP 10
Kill all received messages over 30 days old:
KILL RECEIVED DAYS 30
Kill all received messages AND kill all over 30 days old: (use
two commands!):
KILL RECEIVED
KILL DAYS 30
Kill all private messages that have been received:
KILL RECEIVED PRIVATE
Trim a message area down to the number of messages specified in a
DOS environment variable (use the SET command from DOS to set the
value of MEADOW [i.e. "SET MEADOW=200"]):
KILL KEEP %meadow%
The KILL command can do things many different ways. You may wish
to backup all your messages to a temporary directory before
testing your KILL command(s).
----------------------------------------------------
ARCHIVE
Move messages to a text file
ARCHIVE [PRIVATE] [RECEIVED] [DAYS i] [SKIP j] [KEEP k] [PRIVATE] TO file
The RECEIVED, DAYS, SKIP, and PRIVATE options work just like when
used with KILL. The TO clause tells MAM what file is to hold the
text of the messages which are removed from the message area. The
ARCHIVE command must appear in an AREA block.
RASMAM -10-
Here are a few examples of the ARCHIVE command:
Maintain 100 messages in area. Archive any others to a file
called CHATyy.mmm where YY is the year, and mmm is the month. A
new archive file will automatically be created each month so you
will have CHAT87.SEP, CHAT87.OCT, CHAT87.NOV and so on.
ARCHIVE KEEP 100 TO $ARCS$\CHAT#YEAR.$MONTH$
Archive received private messages into a file:
ARCHIVE PRIVATE RECEIVED TO PRIV.TXT
Prune messages down to 75 when there are 100 or more in the area:
ARCHIVE WHEN 100 KEEP 75 TO $arcs$\chat#YEAR#.#JULIAN#
You can use mix ARCHIVE and KILL statements for each area. The
KILL and ARCHIVE commands are executed in the order they appear
in the script. RENUM and WAIT aren't executed until after all the
KILL and ARCHIVE commands in the area.
----------------------------------------------------
END AREA
Marks the end of an area section
END AREA
The END AREA statement marks the end of an area section. When
RASMAM reads the END AREA statement, it renumbers and produces
the messages waiting lists if the RENUM or WAIT options where
used.
The AREA command and its WAIT, RENUM, KILL, and ARCHIVE commands
should be repeated for each area you wish to process.
AREA records ECHO
WAIT
RENUM SUBJECT
ARCHIVE KEEP 150 TO $arcs$\music#YEAR#.$MONTH$
END AREA
----------------------------------------------------
NOTE
Sends a custom welcome
NOTE {PREFIX|SUFFIX} file-spec TO {user|priv}
The NOTE command allows you to add a note to a custom welcome
screen for a certain user (or group of users based on their
privilege level). NOTE PREFIX adds the note before any text (if
any) already in the custom welcome screen. NOTE SUFFIX adds the
file to the end of the custom welcome.
You may specify a user to receive the custom welcome or specify a
privilege to have the message sent to all users with the
specified privilege. The privilege is TWIT, DISGRACE, NORMAL,
PRIV, EXTRA, ASST, or SYSOP.
RASMAM -11-
The following will send the file TWIT.TXT to all twits.
NOTE SUFFIX $misc$\twit.txt TO TWIT
The follow sends a message to a certain person:
NOTE PREFIX $misc$\friends.txt TO David Hicks
----------------------------------------------------
DELETE
Delete custom welcomes
DELETE {user|priv}
The DELETE command deletes any custom welcome intended for the
specified user or group of users (by privilege level). If someone
who calls your board participates in one of your echomail
conferences on a different system, he may have a long list of
messages waiting even though he's seen them on his board. You can
use DELETE to delete the welcome screen for that caller. If you
have entered "ALL" in your user list, you may wish to delete the
messages waiting for ALL.
DELETE All
Here's a few more examples of the DELETE command:
Remove any custom welcomes waiting for Roger Smith:
DELETE Roger Smith
Remove custom welcomes for every user with SYSOP privilege (to
delete the custom welcome for a user named SYSOP use "ERASE
$custom$\#sysop#.BBS" where $custom$ is the path to your custom
welcomes):
DELETE Sysop
----------------------------------------------------
INCLUDE
Include a script file
INCLUDE script-file
The INCLUDE command causes RASMAM to begin reading the specified
script file. When the end of that script is reached, RASMAM
resumes reading the current script file. Just a word of warning,
the INCLUDE command is slow.
INCLUDE c:\opus\include.mam
The name of the script file should be fully qualified with a
drive, path. and extension specified. INCLUDEs may be nested up
to 10 levels.
RASMAM -12-
----------------------------------------------------
IF
END IF
Conditionally execute commands
IF [@NOT] expression [THEN]
... commands ...
END IF
The IF and END IF commands allow you to conditionally execute
portions of your script file.
The conditional expression is:
value1 == value2 (or =) true if value1 equals value2
value1 != value2 (or <>) true if value1 doesn't equal value2
value1 < value2 true if value1 less than value2
value1 > value2 true if value1 greater than value2
value1 <= value2 true if value1 less than or equal to value2
value1 >= value2 true if value1 greater than or equal to value2
value1 IN value2 true if value1 is contained in value2
@EXISTS filespec true if filespec exists
Values are all one word (no spaces). @NOT inverts the result of
the condition. You MUST put a space before and one after the
operator.
Here are some examples of IF/END IF commands:
IF $MONTH$ == JAN THEN
LOG It is January.
END IF
LOG IF/END IFs may be nested up to 32767 levels
IF @EXISTS c:\opus\system99.bbs THEN
IF $WEEKDAY$ IN TUETHU THEN
LOG It is Tuesday or Thursday ($WEEKDAY$) and SYSTEM99.BBS exists
END IF
IF $MONTH$ <> JAN THEN
LOG System99.BBS exists, but the month is not January
END IF
END IF
IF @NOT $MONTH$#YEAR# == JAN87
LOG It is NOT January 1987
END IF
RASMAM -13-
----------------------------------------------------
ERASE
Deletes the specified file or files.
ERASE filespec
The ERASE command deletes the files that match the specified
filespec. Wildcards may be used. For example,
Delete BULLETIN.BBS and BULLETIN.GBS in C:\OPUS\MISC:
ERASE c:\opus\misc\bulletin.?bs
Delete the custom welcome waiting for the user named "SYSOP":
ERASE c:\opus\#sysop#.BBS
----------------------------------------------------
ADD
Concatenate files
ADD filespec TO filespec GIVING filespec
The ADD command concatenates (adds) two files and puts the result
in a third file. The output file is overwritten if it exists.
The output file may be the same file as one of the files being
concatenated.
For example,
Add a file to the front of BULLETIN.BBS:
ADD $misc$\bull1.bbs TO $misc$\bulletin.bbs GIVING $misc$\bulletin.bbs
----------------------------------------------------
SHELL
Execute a DOS command
SHELL command-line
The SHELL command executes a DOS command. The SHELL command
requires DOS 3.1 or higher.
Display a directory:
SHELL dir $misc$
Execute a batch file called NODEFIX:
SHELL nodefix
Extract a file from an archive:
SHELL echo N | arc x c:\opus\files\next\incoming.arc *.txt
RASMAM -14-
----------------------------------------------------
PICTURE GALLERY
-----------------------------------------------------
On the Main Menu of the RSBBS is an option called Picture
Gallery. It's really the Editorial command renamed. I use the
following RASMAM commands to make different pictures available
for display each day.
----------------------------------------------------
ARC
PKARC
ARC
or
PKARC
The ARC and PKARC commands select the archive utility that
RASMAM's Picture Gallery commands will use to read the list of
picture files and to extract pictures.
ARC tells RASMAM to use SEA's arc utility (PKARC selects PKWARE's
program). Your copy of ARC (or PKARC and PKXARC) must be in the
current path.
----------------------------------------------------
PATH TEMP
Declare a directory for temporary files
PATH TEMP directory
The PATH TEMP command tells RASMAM the path to a directory where
it should create its temporary files. RASMAM uses this directory
to store the picture file that it extracts from an archive.
After it finishes, RASMAM deletes the file from the directory.
Therefore, to avoid the possibility of RASMAM overwriting an
existing file, create a temporary directory just for RASMAM's
use.
----------------------------------------------------
PICTURE FILE
Declare a picture archive file
PICTURE FILE filespec
PICTURE FILE tells RASMAM the name of an archive containing
pictures. RASMAM will read the names of the picture files from
the archive.
RASMAM -15-
----------------------------------------------------
PICTURE HEADER
PICTURE TRAILER
PICTURE INDEX
PICTURE HEADER filespec
PICTURE TRAILER filespec
PICTURE INDEX filespec
PICTURE HEADER supplies the name of a file that will be prefixed
to any picture file that RASMAM creates.
PICTURE TRAILER supplies the name of a file that will be appended
to any picture file that RASMAM creates.
PICTURE INDEX supplies the name of a file that RASMAM uses to
keep track of the last picture it displayed.
----------------------------------------------------
PICTURE NEXT
PICTURE RANDOM
PICTURE {NEXT|RANDOM} TO filespec
PICTURE NEXT chooses the next picture in the current picture
archive and sends it to the specified file (adding the header and
trailer if any).
PICTURE RANDOM chooses a picture at random from the current
picture archive file and sends it to the specified file.
Here's how I use RASMAM's Picture Gallery commands:
; Handle ANSI pictures -- I've changed the E)ditorial command to
; P)icture Gallery on Opus's Main Menu.
PICTURE FILE $misc$\ansi.arc
PICTURE HEADER $misc$\ansi.hdr
PICTURE TRAILER $misc$\ansi.trl
PICTURE INDEX $misc$\ansi.idx
PICTURE NEXT TO $misc$\edtorial.gbs
; Handle ASCII pictures
PICTURE FILE $misc$\ascii.arc
PICTURE HEADER $misc$\ascii.hdr
PICTURE TRAILER $misc$\ascii.trl
PICTURE INDEX $misc$\ascii.idx
PICTURE NEXT TO $misc$\edtorial.bbs
RASMAM -16-
RASMAM Programming Notes
RASMAM commands form a simple programming language. Although the
RASMAM script looks similar to the control files used by my
earlier programs (such as OpusWait), but those programs simply
read the control file to get the values for certain variables
such as message paths. RASMAM actually interprets each command as
it is read. I've tried to make RASMAM as flexible as possible.
The commands may be combined in almost any order. Commands may
be used in ways that I haven't envisioned. I recommend that you
start with a simple script and expand it slowly, taking the time
to observe the effects of each change.
If you have any questions or comments, feel free to contact me
via FidoMail (366/14) or U.S. Snail. I've got some grand plans
for more enhancements. Some have already been written, but I left
them out of RASMAM for fear of introducing bugs (eeek!). I'd
appreciate hearing what you think of RASMAM and what you'd like
to see it do in the future.
My U.S. Mail address is:
Roger Smith, Jr.
1325 Greendale Ave. #29
Ft. Walton Beach, FL 32548
(P.S. Just in case you've heard otherwise -- Ft. Walton Beach IS
the home of the world's whitest beaches!)
Contributions
When I released RASMAM I included a note which said that I would
accept contributions from those of you using RASMAM. I received
over $200 in contributions. They came at a good time. I had
just bought the HST and (almost) over extended myself. Many
thanks to those of you who sent checks.
But, I've decided that I really didn't write RASMAM to make
money. This is a hobby. I do it for fun. For that reason, I'm
asking you not to send me any contributions. Instead, if you use
RASMAM, please consider writing a check to Special Olympics.
Don't worry if it is only five or ten dollars. Mail the check
to:
Special Olympics Inc.
International Headquarters
1350 New York Avenue, N.W.
Suite 500
Washington, D.C. 20005
If you use RASMAM in a commercial environment, or on a BBS that
requires users to pay a fee, please consider a donation to
Special Olympics as mandatory.
INDEX -17-
!=, 12
##, 2
###.BBS, 4
#AREA#, 2
#D#, 2
#DAY#, 2
#HOUR#, 2
#J#, 2
#JULIAN#, 2
#M#, 2
#MINUTE#, 2
#MONTH#, 2
#user name#, 2, 4
#Y#, 2
#YEAR#, 2
$$, 2
$C$, 2
$D$, 2
$M$, 2
$MONTH$, 2
$net/node$, 2
$PATH$, 2
$SCRIPT$, 2
$WEEKDAY$, 2
%%, 2
%var%, 2
/LIST, 1
/TERSE, 1, 4
<, 12
<=, 12
<>, 12
=, 12
==, 12
>, 12
>=, 12
@EXISTS, 12
@NOT, 12
ADD, 13
Add Files, 13
ANSI, 6
ARC, 14
ARCHIVE, 9, 10
INDEX -18-
Archive Messages
ARCHIVE Command, 9
Begin Area Block, 7
Date Type, 6
Echo Control File, 5
End Area Block, 10
Highest Message Number, 6
AREA, 4, 5, 6, 7, 8, 9
ARRIVED, 6
ASST, 10
Built-in Macros, 2
CHAIN, 8
Command File, 1
Comment Lines, 1
Concatenate Files, 13
Control
END IF, 12
Execute DOS Command, 13
Expressions, 12
IF, 12
CUSTOM, 4
Custom Welcomes
Custom Welcome Path, 4
DELETE Command, 11
Echo Control File, 5
FORMAT Command, 5
List Messages Waiting, 8
NOTE Command, 10
Trailer File, 6
User File, 4
DATE, 6
DATE ARRIVED, 6
DATE WRITTEN, 6
DAYS, 8, 9
DEFINE, 3
DELETE, 4, 11
Delete File, 13
DISGRACE, 10
INDEX -19-
ECHO, 7
Echo Control File, 5
END AREA, 8, 10
END IF, 12
ERASE, 11, 13
Examples
ADD, 13
ARCHIVE, 10
ARCHIVE KEEP, 10
ARCHIVE PRIVATE, 10
ARCHIVE RECEIVED, 10
ARCHIVE WHEN, 10
AREA, 7, 10
Built-in Macros, 2
DEFINE, 3
DELETE, 11
END AREA, 10
ERASE, 13
FILE ECHO, 5
FILE HEADER, 6
FILE TRAILER, 6
FILE USER, 4
IF/END IF, 12
INCLUDE, 11
KILL, 9
KILL DAYS, 9
KILL KEEP, 9
KILL PRIVATE, 9
KILL RECEIVED, 9
KILL SKIP, 9
LOCK, 7
LOG, 4
LOG FILE, 3
NOTE PREFIX, 11
NOTE SUFFIX, 11
PATH CUSTOM, 4
Picture Gallery, 15
RENUM, 8
RENUM SUBJECT, 10
SHELL, 13
WAIT, 8, 10
Execute DOS Command, 13
Executing MAM, 1
EXTRA, 10
INDEX -20-
File Commands
Concatenate Files, 13
Delete File, 13
Picture Gallery, Extract Picture Fi, 15
Picture Gallery, Picture File, 14
Picture Gallery, Picture Header, 15
Picture Gallery, Picture Index, 15
Picture Gallery, Picture Trailer, 15
Picture Gallery, Specify Archive Ut, 14
Temporary File Path, 14
FILE ECHO, 5, 7
FILE HEADER, 6
FILE LOG, 3
FILE TRAILER, 6
FILE USER, 4
FORMAT, 5
IF, 12
IN, 12
INCLUDE, 11
KEEP, 4, 8
KILL, 8, 9, 10
Kill Messages
Begin Area Block, 7
Date Type, 6
Echo Control File, 5
End Area Block, 10
Highest Message Number, 6
KILL Command, 8
LOCK, 4, 7
LOG, 4
Log
Display And Log Line, 4
Open Log File, 3
Macros, 2
Macros
Built-in, 2
Definition, 3
MESSAGES, 6
Messages Waiting
Check for Waiting Messages, 8
Custom Welcome Path, 4
Echo Control File, 5
End Area Block, 10
FORMAT Command, 5
Header File, 6
Highest Message Number, 6
LOCK, 7
Skip User, 7
Trailer File, 6
UNLOCK, 7
User File, 4
INDEX -21-
New Features (Version 1.12)
ADD Command, 13
ARC Command, 14
Built-in Macros, 2
DATE command, 6
ERASE Command, 13
FORMAT command, 5
IF Command, 12
INCLUDE Command, 11
LOCK Command, 7
MESSAGES Command, 6
PATH TEMP Command, 14
PICTURE FILE Command, 14
Picture Gallery, 14
PICTURE HEADER Comman, 15
PICTURE INDEX Command, 15
PICTURE NEXT Command, 15
PICTURE RANDOM Command, 15
PICTURE TRAILER Command, 15
PKARC Command, 14
SHELL Command, 13
SKIP Option, 8, 9
UNLOCK Command, 7
NORMAL, 10
NOTE, 4, 10
OpusWait, 8, 16
PATH CUSTOM, 4
PATH TEMP, 14
Picture File, 14
Picture Gallery, 14
Picture Gallery
Extract Picture File, 15
Picture File, 14
Picture Header, 15
Picture Index, 15
Picture Trailer, 15
Specify Archive Utility, 14
Temporary File Path, 14
PICTURE HEADER, 15
PICTURE INDEX, 15
PICTURE NEXT, 15
PICTURE RANDOM, 15
PICTURE TRAILER, 15
PKARC, 14
PKWARE, 14
PKXARC, 14
PREFIX, 10
PRIV, 10
PRIVATE, 8, 9
Privilege, 10
Programming Notes, 16
Pseudo-variables, 2
INDEX -22-
RECEIVED, 8, 9
RENUM, 8, 10
Renumber Messages
Begin Area Block, 7
Echo Control File, 5
Enable Renumbering, 8
End Area Block, 10
Highest Message Number, 6
Reply Chains, 8
Script File, 1
SEA, 14
SHELL, 13
SKIP, 8, 9
Skip User, 7
Specify Archive Utility, 14
SUBJECT, 8
SUFFIX, 10
SYSOP, 10
Temporary File Path, 14
Threaded Message Base, 8
TO, 9
TWIT, 10
UNLOCK, 4, 7
Voluntary Contributions, 16
WAIT, 4, 8, 10
WARNING, 4
WHEN, 8
WRITTEN, 6